אוטומטים מעל עצמים אינסופיים 67663

Σχετικά έγγραφα
אוטומט סופי דטרמיניסטי מוגדר ע"י החמישייה:

חורף תש''ע פתרון בחינה סופית מועד א'

פתרון תרגיל מרחבים וקטורים. x = s t ולכן. ur uur נסמן, ur uur לכן U הוא. ur uur. ur uur

{ : Halts on every input}

Logic and Set Theory for Comp. Sci.

פתרון תרגיל 5 מבוא ללוגיקה ותורת הקבוצות, סתיו תשע"ד

יסודות לוגיקה ותורת הקבוצות למערכות מידע (סמסטר ב 2012)

שדות תזכורת: פולינום ממעלה 2 או 3 מעל שדה הוא פריק אם ורק אם יש לו שורש בשדה. שקיימים 5 מספרים שלמים שונים , ראשוני. שעבורם

לדוגמה: במפורט: x C. ,a,7 ו- 13. כלומר בקיצור

לוגיקה ותורת הקבוצות פתרון תרגיל בית 4 אביב תשע"ו (2016)

מודלים חישוביים תרגולמס 5

לוגיקה ותורת הקבוצות פתרון תרגיל בית 8 חורף תשע"ו ( ) ... חלק ראשון: שאלות שאינן להגשה נפריד למקרים:

[ ] Observability, Controllability תרגול 6. ( t) t t קונטרולבילית H למימדים!!) והאובז' דוגמא: x. נשתמש בעובדה ש ) SS rank( S) = rank( עבור מטריצה m

דף פתרונות 7 נושא: תחשיב הפסוקים: צורה דיסיונקטיבית נורמלית, מערכת קשרים שלמה, עקביות

צעד ראשון להצטיינות מבוא: קבוצות מיוחדות של מספרים ממשיים

שפות פורמאליות אוטומטים

= 2. + sin(240 ) = = 3 ( tan(α) = 5 2 = sin(α) = sin(α) = 5. os(α) = + c ot(α) = π)) sin( 60 ) sin( 60 ) sin(

ניתן לקבל אוטומט עבור השפה המבוקשת ע "י שימוששאלה 6 בטכניקתשפה המכפלה שנייה כדי לבנות אוטומט לשפת החיתוך של שתי השפות:

משוואות רקורסיביות רקורסיה זו משוואה או אי שוויון אשר מתארת פונקציה בעזרת ערכי הפונקציה על ארגומנטים קטנים. למשל: יונתן יניב, דוד וייץ

שפות פורמאליות אוטומטים

gcd 24,15 = 3 3 =

פתרון תרגיל 8. מרחבים וקטורים פרישה, תלות \ אי-תלות לינארית, בסיס ומימד ... ( ) ( ) ( ) = L. uuruuruur. { v,v,v ( ) ( ) ( ) ( )

ביטויים רגולריים הפקולטה למדעי המחשב אוטומטים ושפות פורמליות (236353) הרצאה 5

מתמטיקה בדידה תרגול מס' 13

( )( ) ( ) f : B C היא פונקציה חח"ע ועל מכיוון שהיא מוגדרת ע"י. מכיוון ש f היא פונקציהאז )) 2 ( ( = ) ( ( )) היא פונקציה חח"ע אז ועל פי הגדרת

חידה לחימום. כתבו תכappleית מחשב, המקבלת כקלט את M ו- N, מחליטה האם ברצוappleה להיות השחקן הפותח או השחקן השappleי, ותשחק כך שהיא תappleצח תמיד.

בחינה בסיבוכיות עמר ברקמן, ישי חביב מדבקית ברקוד

תרגול מס' 6 פתרון מערכת משוואות ליניארית

ל הזכויות שמורות לדפנה וסטרייך

אוטומטים- תרגול 8 שפות חסרות הקשר

לוגיקה ותורת הקבוצות מבחן סופי אביב תשע"ב (2012) דפי עזר

brookal/logic.html לוגיקה מתמטית תרגיל אלון ברוק

תרגול 1 חזרה טורי פורייה והתמרות אינטגרליות חורף תשע"ב זהויות טריגונומטריות

לוגיקה ותורת הקבוצות מבחן סופי אביב תשע"ד (2014) דפי עזר

חלק 1 כלומר, פונקציה. האוטומט. ) אותיות, אלפבית, א"ב (.

Regular Expressions (RE)

בעיות חשיבות: :(State transition system) STS מושגים: רדוקציה: f אינה חשיבה g אינה חשיבה; בבעיות הכרעה: f לא כריעה g לא כריעה.

תרגיל 13 משפטי רול ולגראנז הערות

מודלים חישוביים, חישוביות וסיבוכיות (חישוביות) 67521

logn) = nlog. log(2n

1 תוחלת מותנה. c ארזים 3 במאי G מדיד לפי Y.1 E (X1 A ) = E (Y 1 A )

מודלים חישוביים כריעות R זוהי מחלקת השפות הכריעות. מחלקה זו סגורה תחת פעולת המשלים. רדוקציה בעיית ההכרעה רדוקציית מיפוי.

קבוצה היא שם כללי לתיאור אוסף כלשהו של איברים.

מינימיזציה של DFA מינימיזציה של הקנוני שאותה ראינו בסעיף הקודם. בנוסף, נוכיח את יחידות האוטומט המינימלי בכך שנראה שכל אוטומט על ידי שינוי שמות

אוטומטים ושפות פורמליות תרגולים

גבול ורציפות של פונקציה סקלרית שאלות נוספות

אלגברה ליניארית (1) - תרגיל 6

מתמטיקה בדידה תרגול מס' 5

אוטומטים, שפות פורמליות ו ח ישוּב יוּת

מודלים חישוביים פתרון תרגיל 5

x a x n D f (iii) x n a ,Cauchy

מודלים חישוביים מבחן מועד א', סמסטר א' תשע''ה (2015)

מודלים חישוביים, חישוביות וסיבוכיות 67521

. {e M: x e} מתקיים = 1 x X Y

מודלים חישוביים, חישוביות וסיבוכיות 67521

מודלים חישוביים תרגולמס 7

c ארזים 26 בינואר משפט ברנסייד פתירה. Cl (z) = G / Cent (z) = q b r 2 הצגות ממשיות V = V 0 R C אזי מקבלים הצגה מרוכבת G GL R (V 0 ) GL C (V )

מתכנס בהחלט אם n n=1 a. k=m. k=m a k n n שקטן מאפסילון. אם קח, ניקח את ה- N שאנחנו. sin 2n מתכנס משום ש- n=1 n. ( 1) n 1

תרגול פעולות מומצאות 3

הרצאה נושאי הקורס 0.2 א"ב ומילים 0.3 שפות 1. מהו חישוב? 2. מהו מחשב? 3. מהו אלגוריתם? 4. מה ניתן לחשב? מה לא ניתן?

מבני נתונים ואלגוריתמים תרגול #11

סיכום בנושא של דיפרנציאביליות ונגזרות כיווניות

אינפי - 1 תרגול בינואר 2012

אימות חומרה תוכנה אלי דיין 1 6 בדצמבר

רשימת בעיות בסיבוכיות

מתמטיקה בדידה תרגול מס' 12

מבחן מועד ב' בהצלחה! אנא קיראו היטב את ההוראות שלהלן: ודאו כי כל עמודי הבחינה נמצאים בידכם.

אלגברה מודרנית פתרון שיעורי בית 6

תורת הקבוצות תרגיל בית 2 פתרונות

כלליים זמן: S מחסנית, top(s) ראש המחסנית. (Depth First Search) For each unmarked DFS(v) / BFS(v) רקורסיבי. אלגוריתם :BFS

A-PDF Merger DEMO : Purchase from to remove the watermark

מתמטיקה בדידה תרגול מס' 2

הגדרה: מצבים k -בני-הפרדה

מודלים חישוביים, חישוביות וסיבוכיות

תורת הגרפים - סימונים

פתרון תרגיל 6 ממשוואות למבנים אלגברה למדעי ההוראה.

תורת הקבוצות יובל קפלן סיכום הרצאות פרופ ארז לפיד בקורס "תורת הקבוצות" (80200) באוניברסיטה העברית,

רשימת משפטים והגדרות

מבחן במודלים חישוביים + פתרון מוצע

r. כלומר התחיל במצב ההתחלתי, סיים במצב מקבל, ובדרך עבר בצורה חוקית. ניתן להגדיר

קובץ שאלות ופתרונות של שאלות ממבחנים מנושאים שונים

אלגוריתמים בתורת הגרפים חלק ראשון

חישוביות הרצאה 4 לא! זיהוי שפות ע''י מכונות טיורינג הוכחה: הגדרת! : f r

אלגברה ליניארית 1 א' פתרון 2

אלגוריתמים בתורת הגרפים חלק שני

מבני נתונים ויעילות אלגוריתמים


תרגול משפט הדיברגנץ. D תחום חסום וסגור בעל שפה חלקה למדי D, ותהי F פו' וקטורית :F, R n R n אזי: נוסחת גרין I: הוכחה: F = u v כאשר u פו' סקלרית:

(2) מיונים השאלות. .0 left right n 1. void Sort(int A[], int left, int right) { int p;

מכונת טיורינג אוטומט מחסנית לא דטרמיניסטי שפות חופשיות הקשר (שפת ראי לא מסומנת)

חישוביות, אוטומטים ושפות מכונה סיכומי הרצאות

' 2 סמ ליגרת ןורתפ םיפרגה תרותב םימתירוגלא דדצ 1 : הלאש ןורתפ רבסה תורעה

שאלה 1 V AB פתרון AB 30 R3 20 R

אוטומטים ושפות פורמליות מבוא לתורת החישוביות

טענה חשובה : העתקה לינארית הינה חד חד ערכית האפס ב- הוא הוקטור היחיד שמועתק לוקטור אפס של. נקבל מחד חד הערכיות כי בהכרח.

I. גבולות. x 0. מתקיים L < ε. lim אם ורק אם. ( x) = 1. lim = 1. lim. x x ( ) הפונקציה נגזרות Δ 0. x Δx

פתרון תרגיל בית 6 מבוא לתורת החבורות סמסטר א תשע ז

תורת הקבוצות מושגי יסוד בתורת הקבוצות קבוצה אוסף של אלמנטים הנקראים אברי הקבוצה. אין חשיבות לסדר האיברים בקבוצה. אין חשיבות לחזרות.

מבני נתונים 08a תרגול 8 14/2/2008 המשך ערמות ליאור שפירא

c ארזים 15 במרץ 2017

Transcript:

אוטומטים מעל עצמים אינסופיים 67663 חיים שחור סיכומי הרצאות של אורנה קופרמן י"ח אדר תשע"ג (שעור 1) הערה 0.1 מי שמעוניין לסייע בשרטוט האוטומטים מתבקש לפנות אלי. בחישוביות דיברנו על אוטומטים ושפות רגולריות. שפות חסרות הקשר לא מוסיף כוח. אח"כ במכונות טיורינג ושפות כריעות יש מגמה להרחיב את אוסף השפות המזוהות. בכל השלב הזה דברנו על שפות Σ L. ההנחה היא שהמכונה מקבלת קלט סופי, ומוציאה פלט סופי. בקורס הנוכחי נדבר לא על שפות ב Σ אלא שפות שמייצגות אינטראקציה מתמשכת עם הסביבה. למשל, שתי מעליות בבנין עם 20 קומות. בכל קומה יש שני כפתורים לעלות ולרדת, ואנחנו מחפשים אלגוריתם שיפעל כל הזמן, והמטרה היא למזער את זמן ההמתנה למעלית. הפעילות היא מסוג.on-going האינטראקציה היא בכל קומה האם לחוץ למעלה או לא, ואם לחוץ למטה או לא. במקרה הזה [20] {, } 2 = Σ. תכנון האלגוריתם יכול להתחשב בתפוסת המעלית, האם מותר להעביר אנשים ממעלית למעלית. בהתחלה מגיע x, 0 Σ ונפלט y. 0 אח"כ מגיע x 1 ונפלט y, 1 וכך הלאה. לכן אנחנו לא מדברים על שפות סופיות, אלא שפות של מילים אינסופיות. גם מערכות הפעלה מתעסקות בהתנהגות.on-going אפשר לדבר על מילים אינסופיות, או עצים אינסופיים. הקורס הוא בעיקר תיאורטי. נזכיר את המוטיבציה. אדמיניסטרציה יש אתר מודל. יהיו בקורס 4 3 תרגילי בית, עם 25% מהציון (חצי מגן). אפשר להגיש בזוגות. במודל פרק בספר שמדבר על אוטומטים. 1

1 אוטומט מעל מילה אינסופית סוג השפות: אם הא"ב הוא b},σ = {a, אזי a }.L 1 = {w w contains לדוגמא, ababab... L 1 אבל.aabbbbbb... / L 1 1.1 תנאי קבלה בוקי Buchi אוטומט ייראה α.a = Σ, Q, Q 0, δ, עם δ : Q Σ 2 Q (בלי מעברי (ε ו Q.α למשל, האוטומט הסופי שמקבל את המילים המסתיימות ב a (שני מצבים, a הולך למצב המקבל, b למצב ההתחלה). אם האוטומט מקבל כקלט מילה אינסופית (בוקי), ריצה תוגדר באופן דומה. נגדיר ריצה r : N Q מעל המילה... 2 w = σ 1 σ כך ש,r (0) Q 0 ולכל 0,i.r (i + 1) δ (r (i), σ i+1 ) באוטומטים סופיים היינו בודקים את המצב בסוף המילה. במקרה של עצמים אינסופיים, נדבר על = (r) inf inf (r) מקבלת אם"ם r תנאי הקבלה של האוטומט:.{q Q r (i) = q for i} α. A מקבל את w אם קיימת ריצה r מקבלת של A 1 על w. לכן במקרה של האוטומט שתיארנו, עוברים למצב מקבל כל פעם כשרואים a. לכן L. A) 1 ) = L 1 A 1 איור 1: איך מייצרים אוטומטים משלימים? באוטומטים סופיים דטרמיניסטיים הופכים את המצבים המקבלים. אם נהפוך כאן, נקבל את.L (A 2 ) = b השפה := 3 L b. נצטרך לבנות עבורו אוטומט. בשפה זו, מתישהו מתחיל זנב של w} # a (w) {N לכן ניצור אוטומט A 3 א"ד שיקבל זנב כזה, נוכיח שאין אוטומט דטרמיניסטי לשפה הזו. אוטומט חורצני (דטרמיניסטי). לחרצן לעשות דטרמיניזציה. אפשר לחרצן אוטומטים מעל מילים סופיות כי הוא מכיל מספר סופי של אפשרויות. כאן יש לנו מצב אינסופי של אפשרויות. 2

ו A 3 A 2 איור 2: למעלה נמצא האוטומט הדטרמיניסטי A, 2 ולמטה האוטומט הא"ד A. 3 ננסה לצייר אוטומט A 4 עבור השפה בה } = (w).l 4 := {w # a (w) 2N # a קל להכליל את A 3 שיכלול מספר סופי זוגי, ואפשר לעשות אוטומט איחוד ע"י הנחת שני האוטומטים ביחד, ואיחוד המצבים המתחילים בהם. האם קיים A 4 עם שני מצבים? יש לנו אוטומט שמחליף מצבים ב a. צריך להוכיח: אם המילה מכילה מספר סופי של a, היא תעשה את הסיבוב מס' סופי, ותעצור במצב ההתחלה, ותשאר שם בצורה סופית. אם יש מס' אינסופי, היא תעשה אינסוף סיבובים, ותבקר במצב ההתחלה אינסוף פעמים. אם המספר אי זוגי, ניתקע במצב הלא מקבל. 3

A 4 איור 3: מימין אוטומט האיחוד הא"ד לשפה L, 4 משמאל אוטומט דטרמיניסטי לאותה שפה עם שני מצבים. סימון: N BW, DBW הוא סימון לאוטומטים מעל מילים אינסופיות. באופן כללי, המודלים מכילים {A,N},D,U א"ד, דט', אוניברסלי (כל הריצות מקבלות). סוג המודל S},{F, B, C, P, R, ורץ על } T {W, (מילים או עצמים). סימון כמו NF W = DF W אומר שניתן לחרצן אוטומטים מעל מילים סופיות, אבל NBW > DBW אומר שלא ניתן לחרצן כל אוטומט מעל מילים אינסופיות. ביטויים ω רגולריים הם.L Σ ω נזכיר כי ביטוי רגולרי כולל: + 1, ε, σ Σ, r.σ זה מגדיר שפה שהיא תת קבוצה של.r 2, r 1 r 2, r1 ביטויים ω רגולריים:..s 1, s 2 וביטויים ω רגולריים r עבור ביטוי רגולרי s 1 + s 2,rs 1,r ω הערה: N.((ab) ω = abababab...) ω = שרשור ניתן לביצוע רק לאיבר באורך סופי. השפה 2} (w) L = {w # a מבוטאת ע"י הביטוי הבא:.b ab a (a + b) ω כל המילים עם אינסוף a היא.(b a) ω ביטוי עבור מספר סופי של a הוא.(a + b) b ω 4

עבור ביטוי ω רגולרי s, ניתן להגדיר (s) L. נדבר על תכונות סגור של אוטומטים. חיתוך וכד'. 1.1.1 תכונות סגור של NBW 1. איחוד עובד באותו אופן של איחוד.NF W 2. חיתוך עבור NF W השתמשנו באוטומט המכפלה. A 1 A 2 = Σ, Q 1 Q 2, Q 0 1 Q 0 2, δ, F 1 F 2 כאשר σ).δ ( q 1, q 2, σ) = δ 1 (q 1, σ) δ 2 (q 2, מתי זה לא יעבוד לאוטומטי בוקי? המשמעות ב NF W היא שאנחנו מדמים ריצה במקביל על שני האוטומטים, ובודקים האם הסוף הוא מצב מקבל בשניהם. ב,NBW אם נגדיר α, = α 1 α 2 זה ידרוש שהביקורים האינסופיים במצב המקבל יהיו אינסופיים. למשל, שני אוטומטים לשפה } ω L = a} עם שני מצבים מזגזגים, בכל אחד מצב מקבל אחר. אם נגדיר אוטומט מכפלה בצורה הזו, השפה תהיה. נרצה לשרטט אוטומט של שפה שמכיל אינסוף a ואינסוף b. ניצור אוטומט עם מצב התחלתי מקבל, למצב a נלך ונחזור עם b, ולמצב b נלך ונחזור עם a. זהו אוטומט דטרמיניסטי עם 3 חלקים. אפשר גם אוטומט אחר במצב ההתחלה מחכים ל a, במצב הזה מחכים ל b ועוברים למצב מקבל, ומשם חוזרים לנקודת ההתחלה. אנחנו לפעמים מוותרים על כמות מסויימת של b בלי לספור אותם, כי יש לנו bים. זה גם מה שנעשה בהגדרה של החיתוך. יש לנו סימולציה במקביל של A. 1, A 2 נרצה לוודא שיש אינסוף ביקורים ב α. 1, α 2 נתחיל מ A, 1 כשנגיע לביקור ב α, 1 נחפש ביקור ב α 2 בסימולציה השניה, וחוזר חלילה. אם יש אינסוף, נמצא אותם מתישהו. לכן אוטומט החיתוך בצורה פורמלית יהיה 1 A 1 = Σ, Q 1, Q 1 0, δ 1, α ו,A 2 = Σ, Q 2, Q 2 0, δ 2, α 2 נגדיר את אוטומט המכפלה A = A 1 A 2 = Σ, Q, Q 0, δ, α כאשר:.Q = Q 1 Q 2 {1, 2}.Q 0 = Q 0 1 Q 0 2 {1} 5

i q i / α i.j = σ) {j} δ ( q 1, q 2, i, σ) = δ 1 (q 1, σ) δ 1 (q 2, כאשר 3 i q i α i.α = Q 1 α 2 {2} הוכחה: ) 2.L (A) = L (A 1 ) L (A נראה כיוון אחד. נניח (A).w L תהי r 1 = (q n 1 ) n N r = ( q n 1, q n 2, i n ) n N ריצה מקבלת של A על.w נראה כי.w על ריצה מקבלת של A 2 r 2 = (q n 2 ) n N ריצה מקבלת של A 1 על w, וכי בסדרה r יש ביקורים ב { 2 } 2,Q 1 α כלומר אינסוף אינדקסים j כך ש.q j 2 α 2 לכן r 2 היא ריצה מקבלת. נראה כי בין כל שני אינדקסים j 1 < j 2 קיים אינדקס j 1 < j 3 < j 2 כך q j 2 2, q j 2 2, i j2 α וכן q j 1 2, q j 1 כך ש α, i j1 2,i j = ו 2 q j 2 כי אחרי ביקור ב α 2 i j1 +1 נובע = 1 δ מהגדרת.q j 3 ש α 1 1 עוברים ל 1 = j+1.i מאחר ו 2 = j2,i קיים אינדקס j 3 כך ש 2 = +1,i j3 אולם.q j 3 1 מובטח כי α 1 δ מהגדרת.i j3 = 1 נשים לב כי ) 2 A = Q A = O ( A 1 A כאשר בחיבור ) 2. A = O ( A 1 + A נראה כי בהשלמה המצב הרבה יותר חמור. דטרמיניסטי? מה לגבי סגור לאיחוד וחיתוך אוטומט המכפלה שראינו משמר דטרמיניזם, וכבר ראינו אותו. באיחוד, ניקח את אוטומט המכפלה עם α = α 1 Q 2 Q 1 α 2 ואין צורך בעוד מרכיב למכפלה. שבוע הבא נדבר על חיתוך. תרגיל אוטומט ל אם יש אינסוף a יש אינסוף b (מעל c}.(σ = {a, b, כ"ה אדר תשע"ג (שעור 2) באוטומט על הלוח b }.L (A) = {w after every a there is נסתכל על השפה,L : a b אזי L\L ac ω כי.L = a b אפשר ליצור אוטומט איחוד בין a לבין b, ואפשר לצמצם אותו. אפשר לדבר על רמת החופש של אוטומט. יש ל b שלוש אפשרויות ממצב ההתחלה. אם יש a ופנינו ימינה לכיוון "יש מס' a סופי" היינו נתקעים, אבל אם יש מס' סופי של b, ופנינו למטה לכיוון "יש אינסוף b", יש לנו הזדמנות לתקן. 6

איור :4 אוטומטים לשפה a b האוטומט מימין אינו מתאים לשפה, כי הוא דוחה את.ac ω האוטומט האמצעי מסתכל על האיחוד של a, b והאוטומט משמאל מצמצם אותו. הדיון על האפשרויות עבור האות b מתייחס לאוטומט זה. מה לגבי L תחת b}?σ = {a, האם?L =? b כן, כי אם אין, b בהכרח, a והתנאי לא מתקיים. ראינו שהשלמה של L = a אינה מתקבלת ע"י דואליזציה של תנאי הקבלה אפילו כשהאוטומט דטרמיניסטי. למה זה עובד במילים סופיות? כי שם מסתכלים על המצב האחרון, ואם נהפוך את המצבים, השלמנו את השפה. במילים אינסופיות, בתנאי הקבלה של בוקי אנחנו מבקרים אינסוף פעמים במצב מקבל. אם נהפוך, זה אומר שביקרנו אינסוף פעמים במצבים הלא מקבלים. זה לא אומר לגבי מס' הביקורים במצבים המקבלים המקוריים. לכן הגדרת α = Q\α אינה משלימה את השפה. ראינו אוטומט שישלים את השפה L. נרצה לבנות אוטומט שמשלים.DBW NBW משפט 1.1 בהינתן,A DBW יש A NBW כך ש ( A ).L (A ) = Σ ω \L הרעיון: A ינחש מתי A מפסיק לבקר ב α. A = Σ, Q, δ, q 0, α כאשר Q = (Q {1}) ((Q\α) {2}) q 0 = q 0, 1 α = (Q\α) {2} 7

δ ( q, 1, σ) = δ ( q, 2, σ) = { s, 1, s, 2 } { s, 1 } { s, 2 } s / α s α יהי σ),s = δ (q, אזי s / α s α או בצורה יפה יותר לכתיבה: δ ( q, 1, σ) = (δ (q, σ) {1}) ((δ (q, σ) \α) {2}) δ ( q, 2, σ) = (δ (q, σ) \α) {2} דוגמא: לאוטומט שראינו עם a, (התחלה ב α). = q} 1 } q, 0 האוטומט ניתן לצמצום למה שכבר ראינו. איור 5: אוטומט ההשלמה מימין תיאור של אוטומט כללי, שמחזיק "עותק וחצי" של האוטומט A המקורי. משמאל יישום של הבנייה עבור האוטומט מאיור 1 של L. = a טענה 1.2 הבניה נכונה (A) L (A ) = Σ ω \L הוכחה: (A) :L (A ) Σ ω \L ריצה n=0 { q n, c n } ב A מתאימה לריצה n=0 {q n } ב A. תהי r ריצה מקבלת על w ב A, הריצה r המתאימה לה ב A היא הריצה היחידה של A על w, והיא דוחה. 8

) (A :Σ ω \L (A) L תהי (A),w / L הריצה r של A על w מבקרת ב α רק מספר סופי של פעמים. ניתן לבנות ריצה מקבלת של A על w. איזה כיוון היה נופל אם A היה א"ד? כמו שאוטומט על מילים סופיות קשה להשלים. למשל יש אוטומט לשפה (b a a) + שאם נהפוך את המצבים המקבלים נקבל + ε (b a. a) + באופן כללי, A מקבל את w אם קיימת ריצה דוחה של A על w, ומה שאנו צריכים זה לקבל אם כל הריצות של A על w דוחות. איור :6 אוטומטים "משלימים" לשפות b) a (a + ו b) ε + a (a + איך עושים השלמה במילים סופיות? מחרצנים את האוטומט. בפעולה הקודמת, עברנו מ n מצבים ל 2n מצבים בתהליך ההפיכה. באוטומט המכפלה שראינו היה לנו.O (n 1 n 2 ) משפט,NBW > DBW 1.3 כלומר קיימות שפות המזוהות עם אוטומט א"ד, ולא עם אוטומט דטרמיניסטי. more expressive הוכחה: נתבונן,L = a ונראה L NBW ו.L / DBW את L NBW כבר 9

ראינו. נניח בשלילה כי יש A DBW כך ש L L. (A) = יהי Q n. =.δ (b i 1 ) := δ (q 0, b i 1 נתבונן במילה.w 1 = b ω L יש אינדקס,i 1 כך ש α ).δ (b i 1 ab i 2 ) כך ש α יש i 2.w 2 = b i 1 נתבונן במילה ab ω L b, i 1 ופה ההוכחה מתפצלת. עם אינטואיציה טובה, יש סדרה ab i 2 נתבונן במילה ab ω L אינסופית של מילים, וממנה אפשר לייצר מילה עם a. w k = b i 1 כך שבריצה ab i 2 ab i 3 ניתן להמשיך ולהגדיר לכל 1 k את המילה. b i k ab ω.. של A על w, k יש ביקור ב α לפני כל a. δ (b i 1 a... b i j 1 ) = δ (b i 1 עבור,k > n לפי עקרון שובך היונים יש j 1 < j 2 כך ש = ) 2 a... b i j.w = b i 1 a... b i j 1 (ab i j 1 +1... b i j 2 ) ω נתבונן במילה.q α. a כי יש ב w w / L.1 2. הריצה של A על w תבקר פעמים ב q. למה 1.4 (קניג (konig בעץ עם קודקודים ודרגת פיצול סופית יש מסלול אינסופי. ראינו שאי דטרמיניזם מוסיף לכוח ההבעה. מכאן אפשר לעבור לבעיית ההכרעה: נתון אוטומט,NBW האם יש אוטומט DBW שקול לו? נראה שיש פתרון בACE,LOGSP תלוי בייצוג של האוטומט. בוקי בא עם ההגדרה של האוטומט ב 62. לנדובר Landweger ב 69 הגדיר עבור שפה Σ ω lim (R) := {w w has prefixes in L} Σ,R את למשל עבור המילה.lim (R) = a,r = (a + b) a לשפה (ab) R = יש = (R) lim.(ab) ω גם עבור R = (ab) a נקבל.lim (R ) = (ab) ω לכן מ R לגבול שלה יש שפה יחידה, אבל משפה אינסופית, ייתכנו כמה שפות שמייצרות אותה. עבור,L = a איזו שפה R תקיים?lim (R) = L משפט L DBW 1.5 אם"ם קיימת Σ R רגולרית כך ש L.lim R = הוכחה: : תהי R רגולרית, ו A DF W עבור R, נתייחס ל A כאוטומט בוקי. אזי (A)).L ω (A) = lim (L הכיוון השני אותו דבר כמעט. 10

ראינו לשפה DBW 3 a b שונים. אם נסתכל עליהם בתור,DF W הם מגדירים 3 שפות שונות. איור 3 :7 אוטומטים DBW שונים לשפה a b,l ω (A 1 ) = L ω (A 2 ) = L ω (A 3 ) = a b אבל: L (A 2 ) = b a b,l (A 1 ) = a b a ואלו L (A 3 ) = (aa b + bb a) בעיה: בהינתן,A NBW בנה A NF W כך ש (( (A L (A) = lim (L או הכרע שאין כזה. אם היינו יודעים לחרצן אוטומטי בוקי, היינו יכולים לפתור את הבעיה. A להיות A ונקווה שאם L, (A) DBW מתקיים תמיד נגדיר את אלג' 1: 11

(A) lim L (A ) = L (כמו בדרטמיניסטיים). זה לא נכון. דוגמא נגדית: אנו מחפשים A כך ש L, (A) DBW אבל כשנתבונן על A כעל,NF W אז (A) lim (L (A)) L ω (תרגיל). ראינו עבור האוטומט לשפה a שזה לא עובד L (A) = (a + b) b והגבול הוא. b אבל זו שפה שאין לה אוטומט דטרמיניסטי. איור 8: האוטומט עבור b lim (L (A)) = b אולם,L ω (A) = b,l (A) = (a + b) b אלג' 2: חרצן את A ל D DBW (טרם למדנו, אקספוננציאלי),.DF W אליו כ Dכשמתייחסים A המבוקש הוא שאלה: האם הניפוח האקס' חיוני או שאפשר להחזיר אוטומט עם פחות מצבים. אין לנו חסם תחתון ידוע. תזכורת: ניפוחים blow-up ראינו בחישוביות כי NF W DF W עולה 2 n כחסם עליון ותחתון. מסמנים.NF W 2n החסם העליון היה,subset construction אם ננסה לעשות DF W 2 n את זה לאוטומט N, BW נראה איפה אנחנו נופלים. איך מוכיחים שאי אפשר לעשות יותר טוב? מראים משפחה של שפות Σ,L 1, L 2,... כך של L i יש NF W בגודל (i),o אבל DF W המינימלי של L i דורש לפחות 2 i מצבים. צריך משפחה כי לכל פולינום p, קיים i כך ש ( i ) 2. i > p בחישוביות הוכחנו לגבי המשפחה.L i = (0 + 1) 0 (0 + 1) i הא"ד מייצר שרשרת פשוטה, והדטרמיניסטי חייב לזכור את i האותיות האחרונות. היתה לנו הוכחה לחסם תחתון אקס' להשלמה, עבור המשפחה } n.l n = {ww w Σ יש NF W בגודל ) 2 O (n ל L n שינסה לנחש הפרה. לעומת זאת, NF W עבור L n דורש לפחות O(n) 2 מצבים. 1.2 תנאי קבלה נוספים (חסר) ר"ח אייר תשע"ג (שעור 4 חסר שעור 3) 12

תזכורת: הגדרנו ריצה ו ( r ).inf ראינו תנאי בוקי, רבין וסטריט. הראינו שלרבין וסטריט יש אינדקס מצבים וזוגות, ולאוטומט בוקי רק מצבים. ראינו איך k) Rabin (n, k) Buchi (n ו k) Streett (n, k) Buchi ( n 2 עם חסם עליון ותחתון. ראינו DBW < NBW ו.DCW = DBW 1.3 אוטומטים ולוגיקה מסדר שני ב 1962 התפתח :The sequntial calculus למשל האם קיימים x, y, z, n כך ש + x n.y n = z n ההבעה הלוגית היא x y z n s.t. x n + y n = z n לוגיקה פסוקית היא דלה בכך שיש לה קבוצה של אטומים...,q,p וכמתים, ואלגוריתם לבדיקה האם קיימת השמה ספיקה. כאן הדברים מסובכים יותר כי דומיין ההשמות הוא כל הטבעיים. לכן בעיית הספיקות לא בהכרח כריעה. איזו לוגיקה מוגדרת כך שבעיית הספיקות כריעה ואיזו לא. לבוקי היה שיא של בעיות לוגיות נרחבות שעדיין כריעות, וזה נעשה בעזרת אוטומטים. בלוגיקה תמיד מדברים על המבנה. בהקשר של לוגיקה פסוקית יש לנו אטומים ואופרטורים בוליאנים, עם השמות,T F לאטומים. כאן, המבנה >,1+,0,N M = מכיל איבר 0, פעולת העוקב, ויחס סדר. הנוסחאות הן למשל. x y y > x זה אומר שלכל איבר יש איבר גדול ממנו. או למשל x y (x = y + 1 + 1) z (x < z z < y) המתמטיקאים קיוו שאם יש פרוצדורה שמכריעה משפטים כאלו, הם יוכלו להוכיח משפטים נוספים. אם מצליחים להביע משפט בלוגיקה כריעה, אפשר להוכיח \ להפריך אותם. N כאשר M w = נתייחס למילה w מעל הא"ב Σ במבנה N, 0, +1, <, (Q σ ) σ Σ σ}.q σ := {i w [i] = למשל במילה (ab) ω נקבל Q b אוסף המספרים הזוגיים. כל דבר שנפתור במבנה הזה ייפתר במבנה הכללי. את a נבטא ע"י. x y, y > x y Q a לוגיקה מסדר ראשון F OL Σ היא עם התחביר הבא: terms ביטויים. 13

הקבוע.0 משתנים... y,.x, הביטוי + 1 t עבור הביטוי.t נוסחאות.formulas.Q σ ופרדיקט t, t עבור ביטויים t = t, t < t, t Q σ 2 ϕ 1, ϕ 1 ϕ או (x)) x (ϕ 1 עבור נוסחאות.ϕ 1, ϕ 2 (אפשר להרחיב גם לקשרים,, וכמת ). נסמן ב ( x ) ϕ את העובדה ש x חופשי ב ϕ, כלומר אינו בטווח של כמת. איך נגדיר את השפה:. x, x Q a y, y > x y Q b אחרי כל a יש b? רק מספר סופי של aים? ) a. x y (y > x y Q בין כל שני מופעים סמוכים של a יש מספר אי זוגי של b: האם זו שפה רגולרית? כן, אפשר ליצור אוטומט. מסתבר שעם לוגיקה מסדר ראשון אי אפשר להביע איור 9: האוטומט לשפה "בין כל שני מופעים סמוכים של a יש מספר אי זוגי של b את השפה הזו. יש נוסחא בלוגיקה מסדר שני: x y (x Q a y Q b x < y z (z > x z < y z Q a )) X (x X z (z X z + 1 / X) y X) הקבוצה X היא כל האינדקסים שמסכימים עם x על הזוגיות. בלוגיקה מסדר שני או לוגיקה מונדית מסדר שני, Monadic SOL Σ או,S1S Σ הביטויים הם אותם ביטויים, אבל לנוסחאות נוסף 14

X t עבור ביטוי t ומשתנה קבוצות X (נוסחא אטומית)..ϕ עבור נוסחא X (ϕ (X)) יש קשר יפה Descriptive complexity בין המחלקות עם הסיבוריות ללוגיקה איתה ניתן להביע אותם. למשל את הגרף 3 צביע ניתן לבטא ע"י Y R B, v u, E (v, u) ((v Y u / Y ) (v R u / R),...) v, v Y v R v B באופן כללי NP = existentian SOL ו C.P = F OL + T חשבו שדרך זה אפשר להוכיח את.P =? NP מה זה?monadic הפרדיקט (x E,y) הוא בוליאני. בלוגיקה מונדית כל הפרדיקטים אונאריים. נאמר ש L גדירה ב S1S Σ אם קיימת נוסחא ϕ ב S1S Σ כך ש { ϕ.l = {w M w = משפט 1.6 (בוקי, (1962 L גדירה ב S1S Σ אם"ם ω רגולרית). L) L NBW S1S Σ כריעה. נבדוק האם לאוטומט יש מסלול העובר ב α אינסוף פעמים. מסקנה 1.7 הוכחה: : יהי α A = Σ, Q, δ, Q 0, אוטומט.NBW נתאר נוסחא ϕ כך שלכל.w L (A) אם"ם w = ϕ,w Σ ω הנוסחא תאמר: "קיימת ריצה מקבלת על w". נשים לב כי ריצה של A על w משרה חלוקה של N ל Q קבוצות. למשל אם n},q = {0,..., ריצה r : N Q משרה.i Y j r (i) = כך ש j Y 0,..., Y n Y 0... Y n עם הפירוט הבא: 1. כל אינדקס i N נמצא במצב יחיד: i, i Y j i i Y j1 i Y j2 0 j n 0 j 1 <j 2 n נשים לב כי זו נוסחא סופית. 15

j Q 0 0 Y j 2. הריצה מתחילה במצב התחלתי:.3 הריצה עקבית עם.δ נסמן ) 2 (j 1, σ, j אם σ).j 2 δ (j 1, i, i Q σ i Y j1 i + 1 Y j2 j 1,j 2,σ: (j 1,σ,j 2 ) (שוב, הקבוצה )} 2 { j 1, j 2, σ j 1, j 2 Q, σ Σ, (j 1, σ, j סופית). 4. הריצה מקבלת: x y y > x j α y Y j זה הכיוון הקל, שפחות עניין את בוקי. הכיוון המעניין הוא להפוך נוסחא לאוטומט (שמאפשר להכריע את הנוסחא). (אם L גדירה ב S1S Σ אז L היא ω רגולרית): מאחר וכבר הוכחנו שאוטומטים סגורים לשלילה ולחיתוך, הטלה זה לא קשה, והחלק הבעייתי הוא הבסיס של הנוסחאות האטומיות. בוקי הציע תרגום לנוסחאות קנוניות. להוכחה שלושה צעדים: 1. מעבר מ S1S Σ ל S1S (ללא הפרדיקטים Q). σ 2. מעבר מ S1S לנוסחא ב S1S nf (יש רק משתני קבוצות, ושני סוגים של נוסחאות אטומיות: X i X j ו ( succ (X i, X j כלומר } j X i = {x i }, X j = {x וגם.(x j = x i + 1.3 תרגום מ S1S nf אל.NBW צעד ראשון: נקודד את Σ ע"י משתנים X 1,..., X n (משתני קבוצה בוליאניים) כאשר Σ.n = log למשל עבור d},σ = {a, b, c, אזי X 1 מתאים ל d c, ו X 2 מתאים ל d.b, את dabab (ab) ω נקודד ע"י {0} = 1 X ו 2N X 2 = (האי זוגיים). או למשל המילה המוגדרת ע"י i},x 1 = {i : 3 i}, X 2 = {i : 2 היא.(dabcba) ω 16

את כל המילים עם d נבטא ע"י: x y, y > x y X 1 y X 2 ואת b) (a אפשר לבטא ע"י.y / X 1 הערה 1.8 אנחנו מאבדים את ההבדל בין d ל b בצורת הקידוד הזו אין לנו בשום מקום קישור של הקידוד הספציפי עם האותיות, אבל נשים לב שb גדירה אם"ם Σ. עד כדי פרמוטציה על L גדירה, וכנ"ל לגבי רגולריות, לכן ההוכחה היא לגבי d צעד שלישי: יש לנו נוסחא ב,S1S nf עם משתנים X 0,..., X n עם נוסחאות אטומיות,X 1 X 2 ו (.succ (X i, X 2 האוטומט יהיה מעל הא"ב n+1.σ = {0, 1} עבור X 1 X 2 מורכב ממצב יחיד מקבל, עם קשת עצמית עבור כל (x 0,..., x n ) {0, 1} n חוץ מאלו בהם i X j יודעים כי אנו במקום ה i b 0... b n את האות (כשקוראים.x 2 = ו 0 x 1 = 1 אם"ם = 1 j.(b את פרדיקט ה ( succ X) i, X j נייצג ע"י אוטומט שקורא עד שהוא קורא את b עם = 1 i b, ולאחריה הוא קורא מילה עם = 1 j b, ומכאן ואילך הוא קורא רק מילים עם.b i = b j = 0 ח' אייר תשע"ג (שעור 5) במעבר מ SIS ל,NBW יש לנו נוסחאות מעל המספרים הטבעיים. כל מילה מעל 1) ω (0 + מגדירה קבוצות X 1, X 2, X 3 N כאשר נסתכל עליה כעל (3 ω (1 0) + (. באופן כללי כדי להגדיר t קבוצות מעל הטבעיים, נמדל בעזרת מילה. ( (0 + 1) t) ω נגדיר צורה נורמלית לנוסחאות :S1S נוסחאות אטומיות: ) 2 X 1 X 2, Succ (X 1, X עבור משתני קבוצות.X 1, X 2 (תזכורת: Succ (X 1, X 2 ) = T אם הם סינגלטונים של מספרים עוקבים).. X (ϕ 1 ו ( ϕ 1 ϕ 2, ϕ 1 לא נדבר על איך ההמרה עובדת, זה שייך לקורס בלוגיקה, תהיה הפניה למאמר באתר. דוגמא לנוסחא: X 1 X 2 X 2, Succ (X 1, X 2 ) Succ (X 2, X 3 ) Succ (X 2, X 3 ) 17

זוהי נוסחא שאינה ספיקה. לאוטומטים. המטרה שלנו היא לעשות תרגום מהצורה הנורמלית היה לנו גם דרך לסלק את הפרדיקטים של התווים ב Σ. אפשר לעשות זאת ע"י קבוצה מאפיינית לכל σ. Σ ראינו דרך לעשות ע"י Σ log קבוצות מאפיינות, זה קצת בלבל, אבל גם זה אפשרי. משפט 1.9 בהינתן נוסחא ϕ מעל,X 1,..., X t ניתן לבנות NBW שמקבל מילה ב.ϕ (0 + ( אם"ם היא מספקת את 1) t) ω 2) ω 1) (0 + ( לא מוכן לקבל הוכחה: בסיס: עבור,ϕ = X1 X 2 האוטומט מעל אותיות 10 כי אם קיימות אותיות כאלו, יש איבר שנכנס ל X 2 אבל לא ל X. 1 אם יש לנו X i X j מעל t קבוצות, האוטומט יקרא תווים ב {1 t,0}, ולא יקבל תווים בהם = 0 j.σ i = 1, σ עבור ) 2,Succ X) 1, X אם היינו רוצים לומר ש X 1 הוא סינגלטון, היינו צריכים לקרוא כל הזמן 0, מתישהו לקרוא 1, ומאז לקרוא רק 0. אם לא קראנו 1, או קראנו יותר מפעם אחת, אנחנו דוחים. אם מדובר על משתנה X i מתוך t משתנים, צריך להסתכל על כל התווים האפשריים למשתנים האחרים. כשאנחנו מוסיפים את ה Succ, יש לנו דרישה לקרוא בהתחלה 00, מתישהו נקרא 10 (קוראים X), 1 מיד אחריו 01 (קוראים X), 2 ולאחר מכן קוראים רק 00. שוב, אם יש יותר משני משתנים, כל חץ מסמן את כל 2 t 2 האפשרויות למשתנים האחרים. איור :10 האוטומטים עבור ) 2 X 1 X 2, Succ (X 1, X 18

עבור ϕ, זה נובע מסגור להשלמה, ϕ 1 ϕ 2 נובע מסגור לאיחוד, Xϕ נובע מסגור להטלה שנראה: תהי L שפה מעל א"ב.Σ 1 Σ 2 נניח 1} {0, = 1 Σ ו { b Σ 2 = {a, המוגדרת ע"י אוטומט.A עבור מילה w 1 Σ ω 1 ו w 2 Σ ω 2 נגדיר את הרכבת המילים 2 w 1 w.(σ 1 Σ 2 ) ω פעולת ההטלה מוגדרת באופן הבא: L Σ1 = {w 1 w 2 Σ ω 2, w 1 w 2 L} ברור כי אוטומט סגור להטלה, כי נסיר מעל הדרישות של החיצים את החלק ששייך לתווים של Σ 2 (האוטומט יהיה א"ד). בהינתן A מעל Σ 1 Σ 2 נקבל את A Σ1 מעל δ (q, σ 1 ) = σ 2 Σ 2 δ (q, (σ 1, σ 2 )) Σ 1 ע"י פונקציית המעברים 2) ω 1) (0 + ( המתאים לעניינו, עבור נוסחא ) 2, X1 ϕ (X 1, X ויש לנו אוטומט מעל ל (,ϕ (X 1, X 2 נטיל אותו על 1) ω.(0 + 3) ω 1) (0 + (. בחיתוך,Succ (X1, X 2 ) Succ (X הא"ב הוא }{{} 2, X 3 ) X דוגמא: X 3 1 }{{}}{{} θ 1 θ 2 θ 3 של θ 1 θ 2 עם,θ 3 נקבל חיתוך ריק במעבר מ s 0, t 0 ל s 1, t 0 כי θ 3 לא מקבל את.100 2 בעיות הכרעה אנחנו מכירים את P T IME, NP, EXP T IME, NLOGSP ANCE, P SP ACE אלו בעיות הכרעה של מ"ט שעוצרות בזמן סופי. יש מחלקות שמעניין אותנו הזמן, ויש כאלו שמעניין אותנו השטח. בעיית הישיגות: אם יש לנו גרף מכוון ואנחנו מעוניינים לדעת האם יש מסלול בין,s t זו בעיה N. LOGSP ACE complete על סרט העבודה שומרים את הקודקוד הנוכחי ומספר הצעדים (דורש (n O (log מקום), ועל הפלט תרשום את הקודקוד הראשון, וכל פעם תנחש קודקוד נוסף באופן א"ד. אנחנו יודעים כי (n)).t IME (f (n)) SP ACE (f בכיוון ההפוך (n)) SP ACE (f f(n)) T IME ( 2 (אפשר לדמות את מכונת המקום, ולמנות את הקונפיגורציות השונות). 19

איור :11 אוטומטים עבור Succ (X 1, X 2 ) Succ (X 2, X 3 ) X 1 X 3 בשורה הראשונה אוטומט עבור θ. 1 בשורה השניה עבור θ 2 ובשורה השלישית עבור θ. 3 בשורה הרביעית מופיע אוטומט המכפלה עבור θ, 1 θ 2 וקל לראות כי אוטומט המכפלה שלו עם האוטומט ל θ 3 הוא ריק. משפט סאביץ' (n)) NSP ACE (s (n)) SP ACE (s 2 כלומר = ACE NP SP.P SP ACE הבעיות שיעניינו אותנו: בהינתן A, N BW האם?L(A) (בעיית הריקנות). האם L (A) = Σ ω (בעיית האוניברסליות)? בהינתן,A 1, A 2 האם ) 2 L (A 1 ) L (A (בעיית ההכלה)? בעזרת בעיית ההכלה ניתן לפתור את בעיית הריקנות ובעיית האוניברסליות. 20

2.1 בעיית הריקנות נתחיל מבעיית הריקנות: ניתנת לפתרון ב ACE,NLOGSP ננחש מצב q α כך ש q ישיג מ Q 0 ע"י u ומעצמו ע"י v (ישיגות בגרף). נכונות: אם מצאנו מבנה כזה, אזי (A).uv ω L בכיוון השני, אם (A) w, L יש מצב q α שהריצה על w עוברת בו פעמים, ולכן הוא ישיג מ Q 0 ומעצמו. כמו כן זה ניתן לפתרון בזמן לינארי: יהי E G, =,V נאמר ש C V הוא רכיב קשיר היטב Component) (Strongly Connected אם לכל v 1, v 2 C יש מסלול מ v 1 ל C.(E (v 1, v 2 )) v 2 הינו רכיב קשיר היטב מקסימלי SCC) (Maximal אם לכל.SCC אינו C S, S V \C בגרף לדוגמא {4}, 6} {5,, 3} {1, 2,, 2} {1,, {2} :.SCC יש לנו חלוקה ל { 6 {5,, {4}, 3} {1, 2, של,MSCC וזה משרה DAG של גרף בלי רכיבים קשירים. איור 12: גרף לדוגמא 75': T arjan יש חלוקה יחידה ל MSCC וניתן למצוא אותה בזמן לינארי. כעת נפתור את בעיית הריקנות של :NBW נחפש S MSCC שהוא לא טרוויאלי (יש בו לפחות קשת אחת) כך ש α S, והוא ישיג מ Q. 0 מה לגבי תנאי קבלה נוספים? עבור NGW יש כמה קבוצות } k,α = {F 1,..., F ואנו רוצים i inf (r) F לכל Q 0 F 1 F 2... F k הסיבוכיות עדיין לינארית: מחפשים מסלול.i [k] F. 1 זה עדיין לינארי כי ה MSCC הלא טרוויאלי S צריך לקיים } i S F} לכל.i [k] 21

עבור N CW דורשים = α.inf (r) זה אותה סיבוכיות כמו CW N MSCC (נפעיל בודקים האם קיים רכיב קשירות שאינו מכיל איברים ב α :NBW על δ,( Q\α, E ונחפש כזה שישיג (בגרף המקורי) מ Q. 0 ט"ו אייר תשע"ג (שעור 6) טעות שכיחה בתרגילים, בשאלה האחרונה על תנאי :prompt עבור r α, Q מקבלת אם קיים k כך שמבקרים ב α בצפיפות k. הבלבול הk אינו פרמטר של האוטומט. חלק הלכו בכיוון של "קיים k כך שr מקבלת אם מבקרים בα בצפיפות k. זה שינוי סדר הכמתים. איפה זה בא לידי ביטוי: היינו צריכים להוכיח שאין אוטומט עבור a, בגישה השניה, ) a ( b k+1, ומהריצה שלה אפשר הניחו שיש אוטומט עבור a, עם פרמטר k, לקחו לפמפם את b. k לפי תשובה 1, היה צריך להסתכל על...,ababbabbba כלומר לכל k, יש רצף של α k+1 b. לפרטים נוספים מאמר prompt Buchi automata באתר של המרצה. בעיות הכרעה: דיברנו על ריקנות. ראינו אלגוריתם פשוט עבור בוקי (מחפשים מסלול מעגלי לקודקוד ב α שישיג מ Q). 0 זה נמצא ב ACE NLOGSP ולינארי. לNGB אנחנו רוצים מעגל דומה, רק דרך כל F. i ראינו כי (n k),nrw (n,k) NBW לכן בעזרת הרדוקציה אפשר לפתור בזמן פולינומי. כמו כן ב ACE N LOGSP כי אנו מנחשים מסלול שזר ל B i וחותך את G. i סטריט יותר מסובך, כי הרדוקציה היא ל ) (n 2k NBW והיא אקספוננציאלית. נשים לב כי הבעיה היא :NLOGSP ACE hard יש רדוקציה מישיגות אליה בהינתן גרף,s, t נוסיף ל t חץ שיוצא לקודקוד חדש שיהווה בור מקבל, נתייג את הקשתות, ונסמן את {s} Q, 0 = ויש לנו אוטומט שבעיית הריקנות שלו זהה לבעיית הישיגות. 2.2 בעיית האוניברסליות אוניברסליות:?L (A) = Σ ω הצעה ראשונה: בהינתן,A NBW נבדוק ריקנות של A. הבעיה היא ש A A = 2 אם A הוא DBW ואז האלגוריתם הזה הוא = 2 A, וזה נותן לנו אלגוריתם O(n log n) פולינומיאלי. אבל אם A הוא,NBW EXP T IM E לבנות את A ולבדוק ריקנות. אפשר גם ב ACE P SP אם נבצע זאת y the.on מנחשים קודקוד, וממשיכים ממנו הלאה. ניתן להראות כי זו בעיית (NF A האוניברסליות של (בעיית ALL NF A ע"י רדוקציה מבעיית,P SP ACE hard 22

תרגיל. יש גם רדוקציה גנרית הבאה: בהינתן מ"ט דטרמיניסטית rej T = Γ, Q, δ, q 0, q acc, q שפועלת בשטח פולינומיאלי, וקלט Γ,x נבנה A T,x NBW כך ש A T,x אוניברסלי אם"ם T דוחה את.x נזכור כי δ : Q Γ Q Γ {L, R} כעת נרצה לבנות אוטומט. הרעיון: A T,x מקבלת מילה w אם"ם w אינה קידוד של ריצה חוקית של t על x או w קידוד של ריצה דוחה של T על x. אכן, A T x אוניברסלית אם"ם T דוחה את x. כי אם A T x אוניברסלית, כל מילה היא אינה קידוד חוקי של ריצה של T על x, או שהיא ריצה דוחה. לכן אין ריצה מקבלת של T על x. בכיוון ההפוך אם T דוחה את x, אין ריצה מקבלת של T על x ולכן A T x תקבל כל מילה. מימוש: Q) {#}.Σ = Γ (Γ קונפיגורציה של T תקודד ע"י # s(n).γ 1 γ 2... (γ i, q)... γ אם,x = x 1 x 2... x n הקונפיגורציה ההתחלתית תיראה _#... n.(x 1, q 0 ) x 2 x 3... x אם R),δ (q 0, x 1 ) = (q 1, c, הקונפיגורציה הבאה תקודד ע"י #... 3.c (x 2, q 1 ) x אם שתי קונפיגורציות עוקבות #... i+1 γ 1 γ 2... (γ i, q j ) γ i+1... γ s(n) #γ 1 γ 2... (γ i 1, q x ) c, γ הן נבדלות בחלון בגודל 3 סביב הראש הקורא. ניתן להגדיר פונקציה next : Σ 3 Σ כך שאם בקונפיגורציה הנוכחית יש חלון בגודל 3 שמקודד ע"י 1+i σ, 1 i, σ i, σ בקונפיגורציה העוקבת, האות האמצעית בחלון המתאים היא ) i+1.next (σ i 1, σ i, σ הגדרת :next עבור.next (γ 1, γ 2, γ 3 ) = γ 2,γ 1, γ 2, γ 3 Γ עבור γ 1, γ 2, γ 3 Γ ו Q,q (γ 2, q ) δ (q, γ 3 ) = (q, γ, L) next (γ 1, γ 2, (q, γ 3 )) = γ 2 δ (q, γ 3 ) = (q, γ, R) next (γ 1, (γ 2, q), γ 3 ) = γ s.t. δ (γ 2, q) = (q, γ, ) באופן דומה ניתן להבדיל בין # וכד'. האוטומט A T x יפעל כך יקבל מילה אם: 23

איור 13: הרכיב המקבל אם הקונפיגורציה ההתחלתית אינה נכונה 1. יש הפרה של הקונפיגורציה ההתחלתית (מילים שלא מתחילות ב ( x) 1, q 0 הולכות למצב מקבל, או אם האות הבאה היא לא x 2 וכן הלאה), הרכיב שמזהה את זה הוא בגודל + 2 (n).s 2. יש הפרה של.next הרכיב מתחיל ומחכה להפרה. הפרה היא קריאה של.σ Σ\ {next (σ 1, σ 2, σ 3 )} צעדים, ואז קריאה של s התקדמות עוד (n) 1,σ 1, σ 2, σ 3 זה רכיב בגודל ((n) O, s) ויש צורך ב Σ 3 רכיבים כאלו. 3. יש בה קונפיגורציה דוחה נקבל אם קראנו תו } rej σ. Γ q} הריצה היחידה שלא תתקבל באיחוד של כל הרכיבים היא הקידוד של הריצה המקבלת L (A T x ) = {w wencode של (x).t נשים לב כי (x)} innite accept run of T כאשר ריצה מקבלת נכנסת ללולאה של קונפיגורציות זהות המתאימות ל next. 2.3 בעיית הכלת השפות זו בעיה קשה לפחות כמו אוניברסליות אנו רוצים לדעת האם ) 2 L. A) 1 ) L A) וריקנות. A עבור ) 2,L (A 1 ) L (A ואז ) 2 L (A 1 ) L (A נבנה NBW אלגוריתם: on the y A ניתן לבנות את. A = A 1 exp (A 2 ) נשים לב כי.L (A ) = ולכן הבעיה היא ב ACE P. SP 24

איור 14: הרכיב המקבל הפרה של next איור 15: הרכיב המקבל קונפיגורציה דוחה 25

עבור {a},σ = עבור NBW יתקיים = (A) L או.L (A) = {a ω } = Σ ω לעומת זאת עבור L (A),NF W מגדיר תת קבוצה של הטבעיים {k k L (A)} זה נובע מכך שבעיית החברות (מקבלת,w A ומכריעה האם (A) w). L עבור,w שמקבלת רק את L (A w ) אפשר להגדיר?w L (A) איך בודקים האם w = vu ω ולקבוע כי (A).w L (A) L (A w ) L כ"ב אייר תשע"ג (שעור 7) שבוע הבא יש כנס על שפות ממושקלות. אם עד כה דברנו על {1,0} Σ L, : אפשר לדבר על L, : Σ R ועל אוטומט עם עלות של ריצה. יש גם הגדרה של עלות ריצה אינסופית (ממוצע). אפשר אוטומט א"ד שלא ידוע אם יש לו אוטומט דטר' שקול. זה לא כריע (אם אפשר לחרצן). נרצה לפרמל איכות חישוב הוא טוב אם הוא מגיע בסוף ל 1 ולא ל 0. 3 אוטומטים מעל עצים 3.1 הגדרות עצים, אוטומטים וריצה נדבר על עץ מושרש, כאשר הקודקודים הם איברים ב Σ. נרצה למשל להגדיר את העצים שבמסלול השמאלי שלהם יש a. הגדרה 3.1 עבור קבוצה סופית D של כיוונים, נאמר ש D T סגורה לרישות אם x d T עבור D x ו D d אז.x T אם x d במבנה העץ T ו d הוא ההתפצלות האחרונה, גם הרישא x. T נשים לב כי אם = 1 D אז העץ הוא שרוך. D T = הוא העץ המלא. כעת נרצה לסמן את הקודקודים באותיות של הא"ב Σ: הגדרה Σ labeled D tree 3.2 הוא זוג τ T, כך ש D T הוא,D tree ו.Σ ממפה כל קודקוד לאות בא"ב τ : T Σ השורש של :T הצומת.ε מסלול ב T הוא π T כך ש π,ε לכל x,x π עלה (לא קיים d D כך ש (xd T או קיים d D יחיד כך ש π, x d כמו כן 26

π סגור לרישות. בעץ המלא מפתה לזהות מסלול π עם קבוצת הכיוונים ב D ω יש התאמה חח"ע ביניהם, אבל מסלול זו קבוצה של קודקודים. אם יש לי,a}, {b labeled,0} {1 tree יש לי את העץ עם המסלולים, וτ שמתייגת את הצמתים, אוטומט בוקי מעל עצים ) (NBT יהיה A = D, Σ, Q, Q 0, δ, α נניח ש 2 =. D אזי.δ : Q Σ 2 Q2 למשל } 4.δ (q, α) = { q 1, q 2, q 3, q ריצה של A על עץ τ T, היא r T, שהיא Q labeled D tree מסמנים כל קודקוד במצב מ Q.(r : T Q) כך ש.1 הריצה מתחילה במצב התחלתי:.r (ε) Q 0 2. הריצה מכבדת את פונקציית המעברים: לכל x, T r (x 0), r (x 1) δ (r (x), τ (x)) (כאשר 1} {0, =.(D עבור ריצה r T, ומסלול,π T נגדיר π) inf (r כקבוצת המצבים ש r מבקרת בהם פעמים על המסלול π. inf (r π) := {q Q {x π r (x) = q} = } כעת נאמר ש r T, מקבלת אם α inf (r π) לכל מסלול.π T לדוגמא: {1,0} = D (ככה תמיד עד שנאמר אחרת), ו { c Σ. =,a} אנחנו רוצים NBT עבור L = { T, τ ( )} כאשר ( ): יש ב T מסלול שמופיע בו הרצף.cc אחד החסרונות של אוטומטים מעל עצים זה שהם קשים לציור. נתאר את פונקצית המעברים: אם נאמר } 0 δ (q 0, a) = { q 0, q זה אומר שממשיכים לחפש את cc גם בתת העץ השמאלי וגם בתת העץ הימני. זה לא מה שאנחנו רוצים. נבצע ניחוש לא דטרמיניסטי: δ (q 0, a) = { q 0, q acc, q acc, q 0 } 27

q acc הוא "בור מקבל", כלומר } acc δ (q acc, σ) = { q acc, q לכל,σ Σ ו כאשר.q acc α δ (q 0, c) = { q 1, q acc, q acc, q 1 } δ (q 1, c) = { q acc, q acc } δ (q 1, a) = δ (q 0, a) נדגים ריצה של האוטומט לכל מיני עצים: יש קשר בין אוטומט מעל עצים ותורת המשחקים. זה משחק בין האוטומט שאומר לאן הוא מתקדם, ושחקן נגדי שמקשה עליו איך הוא ממשיך מכאן ואילך. דוגמא: NBT עבור קיים מסלול עם cc ובכל המסלולים יש a. באופן כללי, אנחנו יודעים איך יראה אוטומט מעל מילים כאלו. צריך לפתוח את זה לעץ יש פתיחות אוניברסליות לכל המסלולים, ופתיחות של "קיים מסלול". נשים לב כי את הבדיקה של a אנחנו יכולים לדחות לשלב מאוחר יותר. נגדיר את המצבים: q 0 בודק הכל. q 1 בודק הכל, ראינו c ראשון. a. בכל מסלול, קראנו a בודק q 2 c. בכל מסלול, קראנו a בודק q 3 כעת קל לכתוב את פונקצית המעברים: δ (q 0, a) = { q 0, q 2, q 2, q 0 } δ (q 0, c) = { q 0, q 3, q 1, q 3 } δ (q 1, a) = δ (q 0, a) δ (q 1, c) = { q 3, q 3 } δ (q 2, a) = δ (q 3, a) = { q 2, q 2 } δ (q 2, c) = δ (q 2, c) = { q 3, q 3 } ו {.α = {q 2 28

הגדרה 3.3 נאמר ש τ,t הוא עץ,Σ D רגולרי, אם לכל σ, Σ השפה D τ 1 (σ) היא רגולרית. עץ רגולרי ניתן לתאור ע"י אוטומט D Σ transducer (משרן). אם,τ : D Σ באוטומט דטרמיניסטי כל מילה ב D מגיע למצב כלשהו באוטומט, וניתן להשרות ממנה את τ. 3.2 תכונות סגור של אוטומטים מעל עצים 3.2.1 סגור לחיתוך עבור,A 1, A 2 NBT האם קיים A כך ש (?L (A) = L (A 1 ) L (A 2 ב NBW היה לנו אוטומט מכפלה עם שני עותקים. נגדיר גם כאן: A = Σ, Q 1 Q 2 {0, 1}, δ, Q 0 1 Q 0 2 {1}, α δ : (Q 1 Q 2 {1, 2}) Σ 2 (Q 1 Q 2 {1,2}) 2 כאשר δ ( q 1, q 2, i, σ) = { s 1, s 2, i 1, t 1, t 2, i 2 (1), (2), (3)} (1) : s 1, t 1 δ 1 (q 1, σ) (2) : s 2, t 2 δ 2 (q 2, σ) i k q k / α k (3) : i k = 3 i k q k α k ו { 1 } 2.α = Q 1 α האוטומט המושרה על DBT הוא דטרמיניסטי גם הוא. 3.2.2 סגור לאיחוד איחוד של NBT הוא פשוט. בהנחה ש Q 1, Q 2 זרים, אפשר להניח אותם זה ליד זה (כמו באיחוד א"ד של מילים). הבעיה היא בדטרמיניזם. במודל הדטרמיניסטי } 0,Q 0 = {q ו.δ : Q Σ Q D כמו אוטומט מעל מילים, זה משרה ריצה יחידה. עם אוטומט המכפלה (בלי שני עותקים) ) 2 α = (Q 1 α 2 ) (α 1 Q מה יקרה כאן? מסתבר שזה לא סגור לאיחוד. 29

טענה 3.4 אין DBT עבור "יש a בצומת 0 או בצומת 1"= L. האוטומט הא"ד יקיים δ (q 0, σ) = { q a, q acc, q acc, q a } δ (q a, a) = { q acc, q acc } δ (q a, c) = or { q rej, q rej } נשים לב כי השפה היא איחוד של שתי שפות ב.DBT a x = 0.τ 1 (x) = הוכחה: נניח בשלילה כי A הוא DBT עבור L. עבור העץ עם c o.w. נניח כי 2, T, τ 1 L.δ (q 0, c) = q 1, q ולכן A עם מצב התחלתי q 2 מקבל את העץ שכולו c. בעץ τ 2 עם a בקודקוד 1. הריצה המקבלת עליו חייבת לעבור עם.r (0) = q 1, r (1) = q 2 לכן גם A עם מצב התחלתי q 1 מקבל את העץ הקבוע.c לכן האוטומט A יקבל גם את τ. 3 = c כי משני הכיוונים הריצה הנמשכת מקבלת. אבל δ (q 0, a) = { q 0, q acc, q acc, q 0 }. T, τ 3 / L כ"ט אייר תשע"ג (שעור 8) תזכורת: ראינו עץ ל"קיים b איפה שהוא בעץ". ו δ (q acc, σ) = δ (q 0, b) = q acc, q acc כאשר } acc.α = {q ראינו שאין אוטומט DBT עבור שפות מהסוג הזה. זה נבע מכך שהיינו צריכים לנחש מסלול. עבור שפה L Σ ω נגדיר derivable language of L ע"י der (L) := { T, τ π T, τ (π) L} כלומר כל העצים בהם כל המסלולים הם מילים בשפה. דוגמא: L, = (ab ) ω אז (L) der הוא כל העצים שבכל המסלולים יש aים. אם באוטומט DBW עבור δ (q, a) = q 1, δ (q, b) = q 0,L לכל,q {q 0, q 1 } = Q באוטומט A T יהיה לנו 0.δ (q, a) = q 1, q 1, δ (q, b) = q 0, q טענה 3.5 עבור L (A t ) = der (L (A)),A DBW כאשר A t הוא כמו,A אולם.δ t (q, σ) = δ (q, σ), δ (q, σ) הוכחה: אם ) t, T, τ L (A נתבונן בריצה r T, של A t על τ. T, יהי π T מסלול, (π) r היא ריצה חוקית מקבלת של A על (π) τ. לכן כל המסלולים ב τ,t מסומנים במילה שתתקבל ע"י A. 30

אם (A)), T, τ der (L לכל τ (π) L (A),π T כלומר כל המסלולים ב T מסומנים במילה שתתקבל ע"י A. נראה שהריצה של A t על τ,t מקבלת. נשים לב כי באוטומט דטרמיניסטי, מילים עם אותה רישא, הריצה עליהם מתחילה אותו דבר. מתקיים כי הריצה של A על כל מסלול היתה מקבלת. δ t (q, σ) = δ (q, σ) δ (q, σ) הגדרת A t ל :A NBW לדוגמא: בשפה של L = a) + (b b ω (מספר סופי של a). האוטומט "מנחש" מתי מתחיל זנב של b. הטבלה היא δ (q 0, a) = {q 0 }, δ (q 0, b) = {q 0, q 1 }, δ (q 1, a) =, δ (q 1, b) = {q 1 } δ t a b q 0 q 0, q 0 q 0, q 1, q 0, q 0, q 1, q 0, q 1, q 1 q 1 q 1, q 1 טבלת המעברים עבור δ t תהיה קל לראות כי ((A) L A) t ) der L) באופן זהה להוכחה הדטרמיניסטי ריצה מקבלת על (τ,t) ב A t משרה ריצות מקבלות של A על כל המסלולים. המשימה היא למצוא עץ שבכל מסלול שלו יש רק מספר סופי של a, ובכל זאת אינו מתקבל: נבנה עץ בו המסלול השמאלי ביותר הוא b, ω וכל סטיה ימינה בשלב i נותנת לנו a בודד וזנב של b. העץ הזה לא יתקבל, כי המסלול הכי שמאלי חייב להיות כל הזמן ב q, 0 כדי לתמוך בa שיגיע מההתפצלויות הימניות שלו. לכן ) t L A) הוא כל העצים שכל מסלוליהם מגיעים לתת עץ שכולו b. החסרון של אוטומט א"ד מעל עצים הוא שהוא צריך לנחש מעל כל העתידים האפשריים. במצב כזה, א"ד לא מוסיף לנו הרבה..NF W 2n מעל {#} [n] Σ n = כאשר 2 n L n = {σ 1,..., σ k #σ k+1 σ i [n], σ k+1 {σ 1,..., σ k }} ראינו כי DF W למשל / L 4 122#4 אולם L 4.122314#3 אנו יודעים כי: 31

1. יש NF W קטן האוטומט ינחש את האות האחרונה, הרכיב שמנחש את הסיומת 1, נשאר במצב ההתחלתי בקריאת, n...,2. אם רואה 1 הולך למצב הבא, ושם נשאר עד שיראה #1 ויקבל (#2 תתקע ברכיב הזה). זהו אוטומט עם + 1 3n מצבים. 2. כל DF W חייב להיות עם 2 n מצבים לפחות. נקבל כי ) n der L) הוא כל העצים שכל המסלולים שלהם ב L. n אם יש עץ עם שני מסלולים שנגמרים במספרים שונים, אני לא אצליח לנחש את (ε) r נכון (נשים לב כי טבלת המעברים היא דטרמיניסטית, ואי הדטרמיניזם הוא בכך ש Q 0 הוא בגודל n). כ"א סיון תשע"ג (שעור 9) 4 אוטומטים ומשחקי And-Or 4.1 הגדרות יש לנו גרף מכוון, עם תיוג {, } V t. : בכל קודקוד אחד השחקנים בוחר לאן ללכת. יש כמה תנאי ניצחון אפשריים. הראשון הוא בסיסי האם שחקן האו יכול להכריח את שחקן הוגם להגיע ממצב אחד למצב אחר. אסטרטגיה עבור : V f OR : V V OR ובאופן דומה עבור. בהינתן אסטרטגיה f OR של, ו f AND של, ומצב,v V יש מסלול ) AND outcome (v, f OR, f שאותו יסרוק המשחק שמתחיל מ v ומתקדם לפי f. OR, f AND אסטרטגיה f היא חסרת זיכרון memoryless strategy אם היא תלויה רק במצב הנוכחי (ולא בכל ההיסטוריה). עבור תנאי ניצחון הוא חסר זיכרון אם לכל אסטרטגית ניצחון עבורו, יש גם אסטרטגית ניצחון חסרת זיכרון. תנאי ניצחון generalized Buchi אינו חסר זיכרון. למשל המשחק הבא (ציור) ותנאי הקבלה }} 2 α = {{s 1 }, {s האסטרטגיה s 1 w = u s 2 f OR (w v) = o.w. s 2 32

4.2 מאוטומט עצים למשחק בהינתן α (D = {0, 1}) A = Σ, Q, δ, Q 0, נבנה משחק G A כך ששחקן ה OR ינצח ב G A אם"ם (A).L.V AND Q Q,V OR = Q.E ( s 1, s 2, q) (q = s 1 q = s 2 ) וכן E (q, s 1, s 2 ) σ, s 1, s 2 δ (q, σ) תנאי הניצחון הוא α. המשמעות של המשחק, מתחילים מהשורש, שחקן בוחר איזה מצבים לתת לשני הבנים, שחקן יכול לדרוש ממנו שיראה איך הוא ממשיך מאחת האפשרויות. דוגמא: δ (q, a) = { q, q } δ (q, e) = { q, s, s, q } δ (q, b) = δ (s, σ) = { s, s } הגרף כמו בציור. החיצים על הקשתות של שחקן OR אומרות מהי σ שיוצרת את הקשת הזו, החיצים על הקשתות של שחקן AND אומרות האם q = s 1 או q. = s 2 לשחקן OR יש אסטרטגית ניצחון ללכלת ל s,s, ומשם ניכנס למעגל. באופן פורמלי אפשר להוכיח שתי טענות: טענה 4.1 אם ל יש אסטרטגית ניצחון (מאחד הקודקודים ב Q) 0 אז (A) L. הוכחה: נבנה עץ וריצה מקבלת עליו. בהינתן f OR : V V OR V נשים לב כי ההסטוריה האפשרית היא מסוג ) AND,(V OR V וכי היעד הוא.V AND לכן : OR f ( Σ) (Q (Q Q)) Q Q Q כאשר Σ נוספה כי כל מעבר לתיוג Q Q נעזר ב Σ σ כדי לבנות את העץ: σ f OR (q 0 ) = q 1, q 2, אז.τ (ε) = σ אח"כ אם f AND בוחר באחד הצדדים, ו θ,f OR (q 0, q 1, q 2, q 1 ) = q 3, q 4, נתייג,τ (0) = θ וכדומה. טענה 4.2 אם (A) L, יש ל אסטרטגית ניצחון. הוכחה: אם יש לנו ריצה מקבלת על עץ מסויים, אפשר לבנות ממנה אסטרטגית ניצחון. 33

4.3 הכרעת משחקים בהינתן משחק G, מצא את קבוצת הקודקודים W שמהם יש לשחקן ה אסטרטגית ניצחון (יש f OR כך שלכל f AND מתקיים ש( outcome (u, f OR, f AND מקיים את תנאי הניצחון אם"ם.(u W נשים לב שאם לכל מצב יש אסטרטגיה מנצחת משלו, אפשר להרכיב מכולם אסטרטגיה משותפת לפי ההתחלה של הסדרות. W i 4.3.1 פתרון משחקי ישיגות נראה שאם יש אסטרטגיה, יש גם אסטרטגיה חסרת זיכרון, שמשמעותה פשוט הסרת חלק מהקשתות (והשארת קשת בודדת לכל קודקוד של שחקן,(OR וזה עד לניצחון, אם כל המסלולים בגרף שנשאר הם טובים (אסטרטגיה רעה אם קיים מסלול שלא מגיע ל α ). אלגוריתם פולינומיאלי לחישוב W (מצבי הניצחון של ) האלגוריתם יפעל בצורה איטרטיבית:.1 T T ) W 0 = הוא המצבים אליהם אנחנו רוצים להגיע). W i+1 = {v V OR u W i, E (v, u)} {v V AND u E (v, u), u W i }.2 W i הוא אוסף המצבים שיש אסטרטגיה להגיע אליהם בתוך i צעדים. מספר האיטרציות הוא הקוטר של הגרף. הבנייה הזו גם נותנת לנו אסטרטגיה חסרת זיכרון. נשים לב שעל כל קשת עוברים פעם אחת, ואפשר מימוש ליניארי אם שמים מונים לכל צומת על מספר הקשתות היוצאות. זוהי בעיה קלאסית שהיא.P T IME complete 4.3.2 פתרון משחק בוקי באוטומט שראינו,,7 8 הם הקודקודים היחידים שמהם אי אפשר להשיג. בבעיה הנוכחית, אנחנו רוצים להבטיח שיהיו ביקורים אינסופיים בקודקודים המבוקשים, והם האידיאלים עבור שחקן ה. אפשר לדבר על המשחק הדואלי שחקן ה רוצה להגיע אליהם, וזה אותו הדבר, רק שהפעם זה משחק.co Buchi 34

הסיבוכיות היא עדיין בעיה פתוחה, היה פעם מאמר שהתיימר לפתור בזמן לינארי, אולם הוא לא התפרסם בז'ורנל. נגדיר את (S) nonempty reach כקבוצת המצבים שמהם יש לשחקן ה אסטרטגיה להגיע ל S במסלול לא ריק. ניתן לחשב את (S) NER בזמן לינארי כמו קודם, רק שמתחילים מ { S.W 1 = {v V OR u S, E (v, u)} {v V AND E (v, u), u כעת, נגדיר ) T) B, 0 = NER אלו המצבים שמהם נגיע לפחות פעם אחת ל T. ו ( B i+1 = NER (T B i המצבים שמהם נוכל להבטיח הגעה ל T לפחות + 1 i פעמים (באינדוקציה על i). בדוגמא שלנו, 5} {1, 2, 3, 4, = 6}) ({2, NER B 1 = NER ({2}) =.B 0 = 5}.{1, 2, 4, מכאן ({2}) NER B 2 = והגענו לנקודת שבת. זו גם הוכחה לקיום אסטרטגיה חסרת זיכרון. הסיבוכיות היא ( E O. V ) זו בעיה פתוחה אם אפשר לבצע הכל באיטרציה אחת. 4.3.3 פתרון משחקי רבין ראינו כי יש.NRW n,k NBW nk עבור i=1.α = { G i, B i } k משחקי רבין גם הם חסרי זיכרון, ולכן הם שייכים ל.NP בהינתן עד (אסטרטגיה חסרת זיכרון), האם קיים מסלול שמקיים את תנאי Streete הדואלי. ריקנות של Streete זה פולינומיאלי. נראה NP hardness ע"י רדוקציה מ :('88) SAT בהינתן θ = C 1... C m כאשר C i = li 1 li 2 li 3 ו {.L j i {x p, x p.v OR = {C 1,..., C m },V AND = {θ, x 1, x 1,..., x n, x n } הקשתות הן מסוג:,i [m] לכל E (θ, C i ).j [3] לכל E ( ) C i, l j i מכל x p ל C i כך ש x p ב.C i מכל x p ל C i כך ש x p ב.C i חוגים עצמיים ל. x p,x p 35

.α = { {x i }, { x i }, { x i }, {x i } } 1 i n אם θ ספיקה בהשמה כלשהי, נסמן את קודקודי הליטרלים הטובים לפי ההשמה, וכל פעם ש שואל אותי על C i כלשהו, נלך לאחד מהם. נבקר רק בכאלו שמתאימים להשמה (אינסוף פעמים), ולא לאלו שלא מתאימים להשמה. אם יש לי אסטרטגית ניצחון, 5 אוטומטים מתחלפים alternating automata כ"ח סיון תשע"ג (שעור 9) 5.1 הגדרות הסמטניקה של אי דטרמיניזם: } 3 δ (q, a) = {q 1, q 2, q שמשמעותו.q 1 q 2 q 3 אפשר באוטומט מתחלף לתת כל דרישה בוליאנית כמו ) 3.δ (q, a) = q 1 (q 2 q מציין אי דטרמיניזם, ו מציין ריבוי דרישות (אוניברסליות). המשמעות של הביטוי הקודם היא שהסיפא מתקבלת מ q, 1 או גם מ q 2 וגם מ q. 3 עבור קבוצה X נסמן ב ( X ) B + את קבוצת הנוסחאות הבוליאניות החיוביות עם אטומים מ X (θ = x θ θ θ θ true false) Y נאמר כי Y מספקת את θ אם ההשמה עבור נוסחא (X) θ B + וקבוצה X T x Y X = {x 1, x 2, x 3, x 4 } למשל עבור.f Y (x) = f כך ש Y : X {T, F } F x / Y ו ( θ = x 1 (x 2 x 3 מספקות את θ הקבוצות } 2 {x 1, x ו {,{x 1, x 3 וכן כל הקבוצות המכילות אותן (סגורות מעלה). אוטומט מתחלף הוא A = Σ, Q, q 0, δ, α כאשר (Q).δ : Q Σ B + ריצה של A על מילה... 2 w = w 1 w היא עץ.Q labeled N tree הוא לא יהיה עץ שלם (דרגת הפיצול בכל קודקוד היא סופית). הוא יהיה r T r, כאשר N T, r כך ש 36

.r (ε) ו q 0 ε T r.1 Y = { } ( ).2 יהי,x Tr נתבונן ב w x +1.θ = δ r (x), קיימת קבוצה 1 Y s 0,..., s Q כך ש (א) Y מספקת את θ, (ב).{x 0, x 1,..., x ( Y 1)} T r (ג) לכל 1 Y.r (x i) = s i,0 i דוגמא: ) 3.δ (q 0, a) = q 1 (q 2 q ריצות אפשריות על.a (bc) ω אנחנו מתחילים מ.r (ε) = q 0 משם אפשר להמשיך ל { {x 1, x 2 }, {x 1, x 3 או } 3 {x 1, x 2, x (דרגת פיצול 2 או שלוש אלא אם כן נדרוש קבוצה מינימלית). המשמעות של δ,q) (a = true היא שאין צורך שיהיו ל q בנים בעץ. זה). אין ריצה שמשתמשת ב false δ,q) (a = (היה אפשר להשתמש בבור מקבל ובור דוחה במקום r T r, מקבלת אם כל המסלולים האינסופיים מבקרים ב α אינסוף פעמים (מסלולים שהסתיימו ב true הם גם מקבלים). מילה w מתקבלת אם קיימת ריצה מקבלת על w. דוגמא: [n] L n = {w i Σ, ii w},σ n = (כלומר הרצף ii מופיע ב w ). אוטומט ABW לזכור אלו רצפים כבר היו). (צריך הוא אקספוננציאלי ב n L n עבור NBW דורש + 1 2n מצבים, כאשר q 0 הוא מצב התחלתי, q 2i 1, q 2i אורבים ל ii. δ (q 0, i) = q 2i j i q 2j 1 δ (q 2i 1, i) = q 2i δ (q 2i, i) = true δ (q 2i, j) = δ (q 2i 1, j) = q 2i 1 (if j i) אם (xists) E מציין א"ד, ו ( ll ) מציין אוניברסליות, מציין דטרמיניזם E + A מציין מתחלפים. 37

5.2 כוח ההבעה של אוטומטים מתחלפים.AF W NF W 5.2.1 תנאי הקבלה של AF W הוא שכל הקודקודים ברמה הסופית הם מצבים מקבלים (ב E. עוברים לאוטומט E + A ניתן לבצע את זה בצורה דומה לחרצון. מאוטומט α). אם α A = Σ, Q, δ, q 0, נייצר α A = Σ, 2 Q, δ, {q 0 }, כאשר { δ (S, σ) = T T satisfy } δ (s, σ) s S ו.α = 2 α אם נרצה AF W DF W אפשר לבצע חרצון של,NF W ומרחב המצבים יהיה 2. 2Q נראה חסם תחתון של.2Exp משפחה..., 2 L 1, L של שפות כך ש.1 ל L n יש AF W בגודל (n).o.2 W DF המינימלי עבור L n צריך 2 2n מצבים..w (0 + 1) n כך ש L n = (0 + 1 + #) #w# (0 + 1 + #) $w.σ = {0, 1, #, $} למשל 01##0110#000#01110#010##0$000 L 3 אוטומט יהיה דאבל אקספוננט כי בבואו לקרוא את ה $ ה DF W צריך לזכור תת קבוצה של וקטורים ב (1 n 0). + אוטומט מתחלף ב ( O: n) 2 כל פעם שנראה # ננחש האם זו המילה שהולכת להופיע בסוף. בניחוש הנוכחי, אם נסמן w, = σ 1... σ n הוא ישלח עותק שיבדוק את האות הראשונה פה ואחרי ה $. עותק נוסף יבדוק את האות השניה. כל עותק כזה דורש (n) O מצבים, ואנחנו צריכים (n) O עותקים. איך אפשר לרדת ל ( n ) O? אפשר להשתמש בא"ב עשיר [n] Σ. יש לנו מקביליות חסרת שיתוף פעולה בין העותקים. אפשר לחשוב על מודלים חזקים יותר של תיאום בין העותקים עותקים שיכולים לפזול הצידה. דרך לבדיקה היא כמה מצבים נחוצים כדי לזהות את השפה } n.l n = {a עבור DF W יש צורך ב 1 + n מצבים. עבור NF W אותו הדבר. עבור UF W אפשר לבצע עם n מצבים, ועבור AF W אפשר לפי משפט השאריות הסיני בעזרת log n מצבים (מאמר באתר הבית של המרצה). 38

à = Σ, Q, δ, קל לראות כי AF W סגור לשלילה. עבור A AF W אפשר לעבור ל,q α כאשר δ ממירים, ו,T F והופכים את תנאי הקבלה (ההוכחה הפורמלית עוברת דרך שריגים, אבל קל להשתכנע אינטואיטיבית). אין NCW עבור a ים (ראינו כי אין DBW עבור a ). נשים לב כי = NCW.UBW ננסה למצוא UCW עבור a. זה אותו אוטומט של NBW עבור a עם מעבר δ (q 1, b) = q 1 לבור דוחה מהמצב המקבל. נקבל.δ (q 0, b) = q 0 q 1,δ (q 0, a) = q 0 ו.δ (q 1, a) = T לכן התחלפות מוסיפה לכוח הבעה של.Co Buchi לךח\ 39